Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[skip-ci] TMT: run system tests on Fedora #24369

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

lsm5
Copy link
Member

@lsm5 lsm5 commented Oct 25, 2024

This commit introduces TMT test jobs triggered via packit to run system
tests on testing-farm infrastructure. Tests are run for all active
Fedora environments for aarch64 and x86_64. The same
test plan will be reused by Fedora for bodhi, zuul and fedora-ci gating
tests. Packit will handle syncing of test plan and sources from upstream
to downstream.

Jobs will be selectively triggered for main v/s release branches based
on the release PR label. The GHA for labeling PRs has also been
updated in this commit.

Test jobs on the main branch will include builds from the
rhcontainerbot/podman-next copr while tests on release branches will
only include official distro packages.

Does this PR introduce a user-facing change?

None

@openshift-ci openshift-ci bot added release-note-none do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. labels Oct 25, 2024
Copy link
Contributor

openshift-ci bot commented Oct 25, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: lsm5

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 25, 2024
@lsm5 lsm5 force-pushed the tmt-fedora-centos branch from af89e2d to fbd02d2 Compare October 25, 2024 15:14
Copy link

A friendly reminder that this PR had no activity for 30 days.

@lsm5 lsm5 force-pushed the tmt-fedora-centos branch from fbd02d2 to ab31b4b Compare November 25, 2024 13:45
@github-actions github-actions bot removed the stale-pr label Nov 26, 2024
@lsm5 lsm5 force-pushed the tmt-fedora-centos branch 12 times, most recently from 1276d46 to 002ca1c Compare November 27, 2024 13:16
Copy link

Ephemeral COPR build failed. @containers/packit-build please check.

@lsm5 lsm5 force-pushed the tmt-fedora-centos branch 4 times, most recently from 5df7e93 to a2a9383 Compare November 28, 2024 11:03
@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 28, 2024
@lsm5 lsm5 force-pushed the tmt-fedora-centos branch from a2a9383 to ff774a1 Compare November 28, 2024 12:29
@openshift-merge-robot openshift-merge-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 28, 2024
@lsm5 lsm5 force-pushed the tmt-fedora-centos branch from ff774a1 to c92c69f Compare November 28, 2024 13:35
Copy link

Failed to load packit config file:

Please correct data and retry.

For more info, please check out the documentation or contact the Packit team. You can also use our CLI command validate-config or our pre-commit hooks for validation of the configuration.

1 similar comment
Copy link

Failed to load packit config file:

Please correct data and retry.

For more info, please check out the documentation or contact the Packit team. You can also use our CLI command validate-config or our pre-commit hooks for validation of the configuration.

@lsm5 lsm5 force-pushed the tmt-fedora-centos branch 10 times, most recently from 580c8b4 to 2137e28 Compare December 12, 2024 16:00
@@ -187,7 +191,9 @@ when `%{_bindir}/%{name}sh` is set as a login shell or set as os.Args[0].
Summary: Metapackage for setting up %{name} machine
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: gvisor-tap-vsock
%if %{defined qemu}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps you want qemu-kvm? Publishing podman-machine in RHEL without QEMU otherwise feels rather moot?

plans/podman.fmf Outdated Show resolved Hide resolved
@lsm5 lsm5 force-pushed the tmt-fedora-centos branch from 2137e28 to 5322e01 Compare December 13, 2024 09:23
@@ -187,7 +191,11 @@ when `%{_bindir}/%{name}sh` is set as a login shell or set as os.Args[0].
Summary: Metapackage for setting up %{name} machine
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: gvisor-tap-vsock
%if %{defined qemu}
Requires: qemu
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that "qemu" is a really awkward dependency - it pulls in tons of emulators, spice-server, GTK, vte291 etc. -- all stuff that you really don't want on servers. qemu-system-x86-core or qemu-kvm-core exist everywhere and aren't so heavyweight.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We do not use emulation, AFAICT we call qemu-system-x86_64 on x86_64 and qemu-system-aarch64 on aarch64.
Then we also need qemu-img to resize the disk so whatever proves what we need should be fine.

$ rpm -q --whatprovides /usr/bin/qemu-img 
qemu-img-8.2.8-2.fc40.x86_64
$ rpm -q --whatprovides /usr/bin/qemu-system-x86_64
qemu-system-x86-core-8.2.8-2.fc40.x86_64
$ rpm -q --whatprovides /usr/bin/qemu-system-aarch64 
qemu-system-aarch64-core-8.2.8-2.fc40.x86_64

@lsm5 lsm5 force-pushed the tmt-fedora-centos branch 10 times, most recently from 5e4534a to 586f5bc Compare December 19, 2024 10:56
lsm5 added 3 commits December 20, 2024 16:32
The default `gobuild` macro on CentOS Stream 9 now includes support for
`BUILDTAGS`.

CentOS Stream envs now also define `_user_tmpfilesdir` macro by default.

Both these definitions are no longer needed here.

Signed-off-by: Lokesh Mandvekar <[email protected]>
QEMU is available only on Fedora. RHEL and CentOS Stream can use
qemu-kvm instead.

Signed-off-by: Lokesh Mandvekar <[email protected]>
This commit introduces TMT test jobs triggered via packit to run system
tests on testing-farm infrastructure. Tests are run for all active
Fedora and CentOS Stream environments for aarch64 and x86_64. The same
test plan will be reused by Fedora for bodhi, zuul and fedora-ci gating
tests. Packit will handle syncing of test plan and sources from upstream
to downstream.

Jobs will be selectively triggered for `main` v/s release branches based
on the `release` PR label. The GHA for labeling PRs has also been
updated in this commit.

Test jobs on the main branch will include builds from the
`rhcontainerbot/podman-next` copr while tests on release branches will
only include official distro packages.

Signed-off-by: Lokesh Mandvekar <[email protected]>
@lsm5 lsm5 force-pushed the tmt-fedora-centos branch from 586f5bc to d669b9f Compare December 20, 2024 11:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. release-note-none
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants